package com.otitan.la.forest.system.task;

import com.otitan.la.forest.system.service.AreaService;
import com.otitan.la.forest.system.service.DicService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;

/**
 * @Description: 定时任务
 * <p>
 * @Configuration //1.主要用于标记配置类，兼备Component的效果。
 * @EnableScheduling // 2.开启定时任务
 * </p>
 * @Author: jiachangsen
 * @CreateDate: 2020/10/10 09:23
 * @UpdateUser: jiachangsen
 * @UpdateDate: 2020/10/10 09:23
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
@Slf4j
@Configuration
@EnableScheduling
public class ScheduleTask {

    @Autowired
    private DicService dicService;

    @Autowired
    private AreaService areaService;

    /**
     * 同步字典 整小时
     */
    @Scheduled(cron = "0 0 * * * ?")
    private void syncDictionary() {
        log.debug("【定时任务】 - 【同步字典】 >>>>>>>>>>>>>>>>> 开始 <<<<<<<<<<<<<<<<");
        dicService.saveToRedis();
        log.debug("【定时任务】 - 【同步字典】 >>>>>>>>>>>>>>>>> 结束 <<<<<<<<<<<<<<<<");
    }

    /**
     * 行政区划 整小时
     */
    @Scheduled(cron = "0 0 * * * ?")
    private void syncArea() {
        log.debug("【定时任务】 - 【行政区划】 >>>>>>>>>>>>>>>>> 开始 <<<<<<<<<<<<<<<<");
        areaService.saveToRedis();
        log.debug("【定时任务】 - 【行政区划】 >>>>>>>>>>>>>>>>> 结束 <<<<<<<<<<<<<<<<");
    }
}
